package com.ruoyi.base.service;

import java.util.List;

import com.ruoyi.base.domain.BaseTeacher;

/**
 * 教师Service接口
 * 
 * @author yepanpan
 * @date 2020-11-09
 */
public interface IBaseTeacherService 
{
    /**
     * 查询教师
     * 
     * @param id 教师ID
     * @return 教师
     */
    public BaseTeacher selectBaseTeacherById(Long id);
    
    /**
     * 查询教师
     * 
     * @param userId 教师用户ID
     * @return 教师
     */
    public BaseTeacher findTeacherByUser(Long userId);

    /**
     * 查询教师列表
     * 
     * @param baseTeacher 教师
     * @return 教师集合
     */
    public List<BaseTeacher> selectBaseTeacherList(BaseTeacher baseTeacher);

    /**
     * 新增教师
     * 
     * @param baseTeacher 教师
     * @return 结果
     */
    public int insertBaseTeacher(BaseTeacher baseTeacher);

    /**
     * 修改教师
     * 
     * @param baseTeacher 教师
     * @return 结果
     */
    public int updateBaseTeacher(BaseTeacher baseTeacher);

    /**
     * 批量删除教师
     * 
     * @param ids 需要删除的教师ID
     * @return 结果
     */
    public int deleteBaseTeacherByIds(Long[] ids);

    /**
     * 删除教师信息
     * 
     * @param id 教师ID
     * @return 结果
     */
    public int deleteBaseTeacherById(Long id);
    
    /**
     * 修改教师状态
     * 
     * @param ids 需要修改的教师ID
     * @param status 新的状态
     * @return 结果
     */
    public int updateBaseTeacherStatus(Long[] ids, String status);
    
    /**
     * 导入教师数据
     * 
     * @param teacherList 教师数据列表
     * @param isUpdateSupport 是否更新支持，如果已存在，则进行更新数据
     * @param operName 操作用户
     * @return 结果
     */
    public String importTeacher(List<BaseTeacher> teacherList, Boolean isUpdateSupport, String operName);
}
